package com.sztu.common.model;

import com.sztu.common.util.StringUtil;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * 请求分页参数和条件
 *
 * @author xzx
 * @date 2022/9/21
 */
@Data
@Accessors(chain = true)
public class PageRequestDto {
    /**
     * 当前记录起始索引
     */
    private Integer pageNum;

    /**
     * 每页显示记录数
     */
    private Integer pageSize;

    /**
     * 排序列
     */
    private String orderByColumn;

    /**
     * 排序的方向desc或者asc
     */
    private String isAsc = "asc";

    /**
     * 分页参数合理化
     */
    private Boolean reasonable = true;

    public String getOrderBy() {
        if (StringUtil.isEmpty(orderByColumn)) {
            return "";
        }
        return StringUtil.toUnderScoreCase(orderByColumn) + " " + isAsc;
    }
}
